草庐IT

Java TLS-PSK 套接字

全部标签

c++ - 为以太网适配器设置自定义 ip 时无法绑定(bind)套接字

问题在我们运行RTEMS4.9.2的系统上,我们遇到了一个非常奇怪的套接字通信问题。我们正在设置套接字并使用以下命令进行绑定(bind)://Bindthesockettosetthelocalportsockaddr_inlocalSocketAddress={0};localSocketAddress.sin_family=AF_INET;localSocketAddress.sin_port=(u_short)localPort;localSocketAddress.sin_addr.s_addr=localAddress;if(bind(mSocket,(sockaddr*)&

c++ - 从 Boost.ASIO 的套接字类中分离一个本地套接字

是否可以从Boost.ASIO的套接字类中分离一个本地套接字?如果可以,怎么办?我似乎在文档中找不到任何明显的内容。作为我试图完成的事情的快速概述:我有一个类,它建立连接并使用Boost.ASIO进行一些协商,然后在成功时传回nativeWindowsSOCKET,在失败时传回0。除非我弄错了,否则当我的boost::asio::basic_socket被破坏时,native套接字将被关闭并释放。 最佳答案 回答我自己的问题。Windows有一个WSADuplicateSocket函数,可用于复制native套接字。底层套接字将保持

c++ - 在 Boost.Asio 中释放一个套接字(与分配相反),或者不转移所有权

在Boost.Asio套接字中有一个函数分配,但是我正在寻找类似的东西释放/取消分配,将套接字的所有权转移回用户。或某种类型的分配不会将所有权转移给套接字类,因此在销毁时不会关闭它。我知道thissolution但它涉及复制套接字(即创建新的描述符而不是释放一个)。有人知道如何做到这一点吗?编辑:没有这样的功能,已为Boost.Asio开票https://svn.boost.org/trac/boost/ticket/3900 最佳答案 我在.hpp文件(Boost1.35)中找不到任何这样的方法,所以我认为你必须自己修补ASIO并

Java 客户端和 C++ 服务器通过 TCP 套接字发送和接收

我有一个C++服务器和两个客户端(ruby和java)。一切都在64位linux机器上运行(java1.7.0_17)ruby客户端完全可用,但java版本会出现问题。在Java中,我试图从客户端向服务器发送一个字符串。实际上服务器收到了整个字符串,但服务器认为还有更多的东西要接收。ruby客户端看起来有点像这样:socket=TCPSocket.open(@options[:host],@options[:port])test="Hello,World"socket.putstestsocket.shutdown1response=socket.gets这里一切正常。ruby客户端发

c++ - 在 Wireshark 中看到的数据报,Qt UDP 套接字未收到

我正在编写一个通过UDP套接字与FPGA通信的Qt(5.6)应用程序。数据包以2KHz的速率流式传输到PC(所有数据包大小相同,1272字节)。Wireshark显示正在发送数据包,并且UDPheader符合预期。问题是,我正在使用的QtUDP套接字从未收到这些数据包。readyRead信号永远不会被调用。这是一个代码片段:UdpConnection::UdpConnection(QObject*parent){fpgaConnection=QSharedPointer(newQUdpSocket);qDebug()bind(QHostAddress("192.168.10.10"),

c++ - 哪些并行计算 API 可以很好地利用套接字?

我的程序使用套接字,我可以使用哪些并行计算API来帮助我,而不用强制我从套接字转到其他任何东西?当我们在具有特殊的非套接字基础设施系统的集群上时,此API会模拟套接字之类的东西但使用该基础设施(因此程序执行速度比套接字快得多,但仍使用套接字API)。 最佳答案 你熟悉MessagePassingInterface(MPI)吗??这通常是在并行计算机上扩展代码的方法。正如您所指出的,它与大多数套接字API不兼容,但扩展的好处几乎肯定会超过转换代码的成本。 关于c++-哪些并行计算API可以

c++ - 模拟套接字错误

如何模拟套接字错误?(有时服务器或客户端由于某些套接字错误而断开连接,并且无法重现。)我一直在寻找一种工具来执行此操作,但找不到。有谁知道一种工具或有关于如何执行此操作的代码示例?(C#或C/C++) 最佳答案 向您用于访问套接字的API添加一个包装层,并让它们在rand()%100>x%的时间内失败。 关于c++-模拟套接字错误,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2

java - 如何从 Java 通过套接字 C++ 兼容结构发送?

假设已经有一个已经编写好的、不可更改的主机程序,它通过套接字接收这样的C++结构:#pragmapack(push,2)structData{doublex;doubley;doublez;longframeNumber;};#pragmapack(pop)平台:在VisualStudio2008中编译的C++/32位Windows应用程序如何从JavaSocket发送这样的数据?我尝试用putDouble()和putLong()填充ByteBuffer,假设long为32位,还有putInt(),但我无法生成有效值。我也随机生成和发送数据,结构级字节分配看起来不错(我只能随机化一个值

c++ - 如何在不关闭套接字的情况下取消异步读/写?

如何在不关闭套接字的情况下取消异步读写?我使用boost.asio。谢谢。 最佳答案 使用socket::cancel.Cancelallasynchronousoperationsassociatedwiththesocket. 关于c++-如何在不关闭套接字的情况下取消异步读/写?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/4546491/

c++ - 使用 select() 检测套接字何时断开连接

我正在尝试检测客户端何时与select()函数断开连接。问题是,我不太了解select()是如何工作的。我正在使用以下代码,你能告诉我我做错了什么和/或如何检测客户端是否断开连接吗?我正在使用非阻塞套接字。intNetwork::bytesAvailable(){longbytes=0;if(ioctl(this->sockfd,FIONREAD,&bytes)sockfd,&fd);result=select(this->sockfd+1,&fd,0,0,&tv);if(result&&!this->bytesAvailable()){return-1;//disconnected,